package com.cy.jt.security.interceptor;

import org.springframework.web.servlet.HandlerInterceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class TokenInterceptor implements HandlerInterceptor {
    /*
    令牌（token:ticker-通票）拦截器
    其中，HandlerInterceptor为Spring Mvc中的拦截器，可以在Controller方法执行之前或者之后完成一些规定的动作。
     preHandle方法是在目标Controller方法之前执行规定的动作，例如检查用户是否登录
     */
    @Override
    public boolean preHandle(HttpServletRequest request,
                             HttpServletResponse response, Object handler) throws Exception {

        System.out.println("---------站住，你需要接受我们的检查！-------------");

        String token = request.getParameter("Authentication");
        //判断请求中是否有令牌
        if(token==null||"".equals(token))throw new RuntimeException("请先登录");
        return true;//false表示拦截到请求以后，不再继续传递；true表示放行；
    }
}
